翻訳と辞書
Words near each other
・ Sidel
・ Sidelhorn
・ Sidelifter
・ Sidelight
・ Sideline
・ Sideline Ho
・ Sideline reporter
・ Sidelines
・ Sidelines of the City
・ Sideling
・ Sideling Creek Dam
・ Side dish
・ Side Effect
・ Side effect
・ Side Effect (album)
Side effect (computer science)
・ Side effect (disambiguation)
・ Side Effects (2005 film)
・ Side Effects (2013 film)
・ Side Effects (album)
・ Side Effects (Allen book)
・ Side Effects (Bass book)
・ Side Effects (EP)
・ Side Effects (song)
・ Side Effects (soundtrack)
・ Side Effects (TV series)
・ Side Effects May Vary
・ Side Effects of You
・ Side Effects of You Tour
・ Side Four


Dictionary Lists
翻訳と辞書 辞書検索 [ 開発暫定版 ]
スポンサード リンク

Side effect (computer science) : ウィキペディア英語版
Side effect (computer science)

In computer science, a function or expression is said to have a side effect if it modifies some state or has an ''observable'' interaction with calling functions or the outside world. For example, a particular function might modify a global variable or static variable, modify one of its arguments, raise an exception, write data to a display or file, read data, or call other side-effecting functions. In the presence of side effects, a program's behavior may depend on history; that is, the order of evaluation matters. Understanding and debugging a function with side effects requires knowledge about the context and its possible histories.〔“Research Topics in Functional Programming” ed. D. Turner, Addison-Wesley, 1990, pp 17–42. Retrieved from: 〕
Side effects are the most common way that a program interacts with the outside world (people, filesystems, other computers on networks). But the degree to which side effects are used depends on the programming paradigm. Imperative programming is known for its frequent utilization of side effects.
In functional programming, side effects are rarely used. The lack of side effects makes it easier to do formal verifications of a program. Functional languages such as Standard ML, Scheme and Scala do not restrict side effects, but it is customary for programmers to avoid them.〔(Matthias Felleisen et al., ''How To Design Programs'', MIT Press )〕 The functional language Haskell expresses side effects such as I/O and other stateful computations using monadic actions.〔Haskell 98 report, http://www.haskell.org.〕〔''Imperative Functional Programming'', Simon Peyton Jones and Phil Wadler, ''Conference Record of the 20th Annual ACM Symposium on Principles of Programming Languages'', pages 71–84, 1993〕
Assembly language programmers must be aware of ''hidden'' side effects — instructions that modify parts of the processor state which are not mentioned in the instruction's mnemonic. A classic example of a hidden side effect is an arithmetic instruction that implicitly modifies condition codes (a hidden side effect) while it explicitly modifies a register (the overt effect). One potential drawback of an instruction set with hidden side effects is that, if many instructions have side effects on a single piece of state, like condition codes, then the logic required to update that state sequentially may become a performance bottleneck. The problem is particularly acute on some processors designed with pipelining (since 1990) or with out-of-order execution. Such a processor may require additional control circuitry to detect hidden side effects and stall the pipeline if the next instruction depends on the results of those effects.
== Referential transparency ==
(詳細はpure (always returns the same results on the same input).

抄文引用元・出典: フリー百科事典『 ウィキペディア(Wikipedia)
ウィキペディアで「Side effect (computer science)」の詳細全文を読む



スポンサード リンク
翻訳と辞書 : 翻訳のためのインターネットリソース

Copyright(C) kotoba.ne.jp 1997-2016. All Rights Reserved.